package com.mavenq.fly.test;

import java.io.File;

/**
 *  当我们的开发环境不能连网，开发环境maven库只能通过在能连网的环境中全部下载下来再copy到我们的开发环境
 *  （把能连网环境的maven库全部copy到开发环境的maven中），这样添加jar包方便，但是容易引发本地maven库不能使用
 *  （本地jar包存在，maven总是去从私服中下载，但是开发环境又不能上网，所以出现了不能使用的原因，
 *  而且在jar包中还会出现大量以lastUpdates结尾的文件），
 *  这是因为copy进来的jar包中的 _remote.repositories 文件中设置了当前jar包引用优先从私服下载。
 *
 * 解决方法：删除开发环境的maven库中所有jar包的_remote.repositories文件和以lastUpdated结尾的文件，
 * _remote.repositories删除后会重新自动生成。

 *
 * 原文链接：https://blog.csdn.net/woshixiazaizhe/article/details/84768877
 */
public class DeleteRelateFile {

    public static void main(String[] args) {
        delete(new File("C:\\Users\\褚鹏飞\\.m2\\repository"));
    }

    public static void delete(File file) {
        if (null == file) {
            return;
        }
        if (file.isDirectory()) {
            File[] files = file.listFiles();
            if (null != files) {
                for (File childFile : files) {
                    delete(childFile);
                }
            }
        } else {
            if (file.getName().equals("_remote.repositories") || file.getName().endsWith(".lastUpdated")) {
                file.delete();
            }
        }
    }
}
